package com.runvp.common.util;

import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;

import java.io.File;
import java.net.URLDecoder;
import java.nio.charset.StandardCharsets;

/**
 * 读取配置文件
 * @author xkk
 * @date 2020/12/21
 */
@Slf4j
public class PathUtils {


    /**
     * 如果已打成jar包，则返回jar包所在目录
     * 如果未打成jar，则返回target所在目录
     * @return str
     */
    public static String getRootPath(String env) {
        try{
            // 项目的编译文件的根目录
            String path = URLDecoder.decode(PathUtils.class.getResource("/").getPath(), String.valueOf(StandardCharsets.UTF_8));
            if (path.startsWith("file:")) {
                int i = path.indexOf(".jar!");
                path = path.substring(0, i);
                path = path.replaceFirst("file:", "");
            }
            log.info("now env : "+env);
            //本地环境
            if(StringUtils.isNotBlank(env) && "local".equals(env)){
                return path;
            }
            // 项目所在的目录
            return new File(path).getParentFile().getAbsolutePath()+"/";
        }catch (Exception e){
            log.error("getRootPath===> error:{}",e);
            return "";
        }
    }

    public static void main(String[] args) {
        System.out.println(getRootPath("test"));
    }
}
